// 列表移动 behavior，需要 列表移动的页面直接引入并注册此 behavior
module.exports = Behavior({
    methods: {
        // ListTouch触摸开始
        ListTouchStart(e) {
            this.setData({
                ListTouchStart: e.touches[0].pageX
            })
        },

        // ListTouch计算方向
        ListTouchMove(e) {
            this.setData({
                ListCanMove: Math.abs(e.touches[0].pageX - this.data.ListTouchStart) > 60, // 偏移量达到一定值的时候触发移动
                ListTouchDirection: e.touches[0].pageX - this.data.ListTouchStart > 0 ? 'right' : 'left'
            })
        },

        // ListTouch计算滚动
        ListTouchEnd(e) {
            if (this.data.ListCanMove) { // 偏移量达到一定值的时候触发移动
                if (this.data.ListTouchDirection == 'left') {
                    this.setData({
                        modalName: e.currentTarget.dataset.target
                    })
                } else {
                    this.setData({
                        modalName: null
                    })
                }
                this.setData({
                    ListTouchDirection: null
                })
            }
        },
    }
})
